home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / Vk / VkDoubleBuffer.z / VkDoubleBuffer
Encoding:
Text File  |  2002-10-03  |  8.0 KB  |  199 lines

  1.  
  2.  
  3.  
  4. VVVVkkkkDDDDoooouuuubbbblllleeeeBBBBuuuuffffffffeeeerrrr((((3333xxxx))))                                          VVVVkkkkDDDDoooouuuubbbblllleeeeBBBBuuuuffffffffeeeerrrr((((3333xxxx))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      VkDoubleBuffer - Abstract class supports classes that draw double-
  10.      buffered graphics
  11.  
  12. IIIINNNNHHHHEEEERRRRIIIITTTTSSSS FFFFRRRROOOOMMMM
  13.      VkComponent : VkCallbackObject
  14.  
  15. HHHHEEEEAAAADDDDEEEERRRR FFFFIIIILLLLEEEE
  16.      #include <Vk/VkDoubleBuffer.h>
  17.  
  18. PPPPUUUUBBBBLLLLIIIICCCC PPPPRRRROOOOTTTTOOOOCCCCOOOOLLLL SSSSUUUUMMMMMMMMAAAARRRRYYYY
  19.    CCCCoooonnnnssssttttrrrruuuuccccttttoooorrrr////DDDDeeeessssttttrrrruuuuccccttttoooorrrr
  20.            VkDoubleBuffer(const char* name, Widget parent);
  21.            virtual void ~VkDoubleBuffer(void);
  22.  
  23.  
  24.    SSSSwwwwiiiittttcccchhhhiiiinnnngggg BBBBuuuuffffffffeeeerrrrssss
  25.            virtual void update(void);
  26.  
  27.  
  28. PPPPRRRROOOOTTTTEEEECCCCTTTTEEEEDDDD PPPPRRRROOOOTTTTOOOOCCCCOOOOLLLL SSSSUUUUMMMMMMMMAAAARRRRYYYY
  29.    RRRReeeessssiiiizzzziiiinnnngggg aaaannnndddd RRRReeeeffffrrrreeeesssshhhhiiiinnnngggg tttthhhheeee CCCCaaaannnnvvvvaaaassss
  30.            virtual void resize(void);
  31.            virtual void draw(void) = 0;
  32.  
  33.  
  34.    PPPPrrrrooootttteeeecccctttteeeedddd DDDDaaaattttaaaa MMMMeeeemmmmbbbbeeeerrrrssss
  35.            Pixmap _canvas;
  36.  
  37.  
  38.            Dimension _width;
  39.  
  40.  
  41.            Dimension _height;
  42.  
  43.  
  44. CCCCLLLLAAAASSSSSSSS DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  45.           This class provides support for classes that need to display double
  46.           buffered graphics.  The public interface allows applications to
  47.           drive animations by calling the _u_p_d_a_t_e() member function at the
  48.           desired interval. The VkDoubleBuffer class calls derived classes'
  49.           _d_r_a_w() member function when the derived class needs to draw a new
  50.           frame.  Derived classes do not need to worry about handling window
  51.           damage, as the VkDoubleBuffer class takes care of this
  52.           automatically.
  53.  
  54.  
  55.  
  56. DDDDEEEERRRRIIIIVVVVIIIINNNNGGGG SSSSUUUUBBBBCCCCLLLLAAAASSSSSSSSEEEESSSS
  57.           Derived classes must define the draw member function. This member
  58.           function is expected to display some Xlib text or Xlib graphics by
  59.           drawing to the _canvas member, which is a Drawable. The derived
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. VVVVkkkkDDDDoooouuuubbbblllleeeeBBBBuuuuffffffffeeeerrrr((((3333xxxx))))                                          VVVVkkkkDDDDoooouuuubbbblllleeeeBBBBuuuuffffffffeeeerrrr((((3333xxxx))))
  71.  
  72.  
  73.  
  74.           class is always drawing to the back buffer, although derived classes
  75.           do not need to be aware of this.
  76.  
  77.           Derived classes that need to know when the window has been resized
  78.           can override the virtual function _r_e_s_i_z_e() to be notified.
  79.  
  80.  
  81.  
  82. FFFFUUUUNNNNCCCCTTTTIIIIOOOONNNN DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNNSSSS
  83.    rrrreeeessssiiiizzzzeeee(((())))
  84.            virtual void resize(void);
  85.  
  86.  
  87.           Called when the object's drawable area changes size. The new size
  88.           can be accessed in the __w_i_d_t_h and __h_e_i_g_h_t members.
  89.  
  90.    ddddrrrraaaawwww(((())))
  91.            virtual void draw(void) = 0;
  92.  
  93.  
  94.           This pure virtual function must be defined by derived classes. The
  95.           function is expected to use Xlib calls to display graphics in the
  96.           __c_a_n_v_a_s Drawable.
  97.  
  98.    VVVVkkkkDDDDoooouuuubbbblllleeeeBBBBuuuuffffffffeeeerrrr(((())))
  99.            VkDoubleBuffer(const char* name, Widget parent);
  100.  
  101.  
  102.           Initialize the VkDoubleBuffer class and create various widgets and
  103.           Pixmaps used to support the double buffering.
  104.  
  105.    ~~~~VVVVkkkkDDDDoooouuuubbbblllleeeeBBBBuuuuffffffffeeeerrrr(((())))
  106.            virtual void ~VkDoubleBuffer(void);
  107.  
  108.  
  109.           Destroys the pixmaps and graphics contexts used by this class.
  110.  
  111.    uuuuppppddddaaaatttteeee(((())))
  112.            virtual void update(void);
  113.  
  114.  
  115.           Displays the current back buffer of the double-buffered display and
  116.           requests the derived class to redraw a new back buffer.
  117.  
  118. DDDDAAAATTTTAAAA MMMMEEEEMMMMBBBBEEEERRRR DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNNSSSS
  119.    ____ccccaaaannnnvvvvaaaassss
  120.            Pixmap _canvas;
  121.  
  122.  
  123.           Derived classes always draw to this Drawable. The VkDoubleBuffer
  124.           class copies the contents of this Pixmap as needed.
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. VVVVkkkkDDDDoooouuuubbbblllleeeeBBBBuuuuffffffffeeeerrrr((((3333xxxx))))                                          VVVVkkkkDDDDoooouuuubbbblllleeeeBBBBuuuuffffffffeeeerrrr((((3333xxxx))))
  137.  
  138.  
  139.  
  140.    ____wwwwiiiiddddtttthhhh
  141.            Dimension _width;
  142.  
  143.  
  144.           The current width of the available drawing area.
  145.  
  146.    ____hhhheeeeiiiigggghhhhtttt
  147.            Dimension _height;
  148.  
  149.  
  150.           The current height of the available drawing area.
  151.  
  152. EEEEXXXXAAAAMMMMPPPPLLLLEEEE
  153.  
  154.  
  155. IIIINNNNHHHHEEEERRRRIIIITTTTEEEEDDDD MMMMEEEEMMMMBBBBEEEERRRR FFFFUUUUNNNNCCCCTTTTIIIIOOOONNNNSSSS
  156.    IIIInnnnhhhheeeerrrriiiitttteeeedddd ffffrrrroooommmm VVVVkkkkCCCCoooommmmppppoooonnnneeeennnntttt
  157.           installDestroyHandler(), removeDestroyHandler(), widgetDestroyed(),
  158.           setDefaultResources(), getResources(), callCallbacks(),
  159.           VkComponent(), manage(), unmanage(), baseWidget(), okToQuit(),
  160.           _name, _baseWidget, _w, deleteCallback
  161.  
  162.  
  163.    IIIInnnnhhhheeeerrrriiiitttteeeedddd ffffrrrroooommmm VVVVkkkkCCCCaaaallllllllbbbbaaaacccckkkkOOOObbbbjjjjeeeecccctttt
  164.           callCallbacks(), addCallback(), removeCallback(),
  165.           removeAllCallbacks()
  166.  
  167.  
  168. KKKKNNNNOOOOWWWWNNNN DDDDEEEERRRRIIIIVVVVEEEEDDDD CCCCLLLLAAAASSSSSSSSEEEESSSS
  169.      VkMeter, VkPie
  170.  
  171. CCCCLLLLAAAASSSSSSSSEEEESSSS UUUUSSSSEEEEDDDD BBBBYYYY TTTTHHHHIIIISSSS CCCCLLLLAAAASSSSSSSS
  172.      VkApp
  173.  
  174. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  175.      VkComponent, VkApp
  176.      _V_i_e_w_K_i_t _P_r_o_g_r_a_m_m_e_r'_s _G_u_i_d_e
  177.      _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m, DEC Press, Bob Sheifler and Jim Gettys
  178.      _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m _T_o_o_l_k_i_t, DEC Press, Paul Asente and Ralph Swick
  179.      _T_h_e _O_S_F/_M_o_t_i_f _P_r_o_g_r_a_m_m_e_r_s _R_e_f_e_r_e_n_c_e, Prentice Hall, OSF
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.